﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace AjedrezWebV2.Models
{
    [Table("Jugador")]
    public class Jugador
    {
        [Key]
        [Column("id")]
        public Guid Id { get; set; }

        [Column("nombre")]
        public String Nombre { get; set; }

        [Column("apellido")]
        public String Apellido { get; set; }

        [Column("nacimiento")]
        public DateTime Nacimiento { get; set; }

        public virtual List<Partida> PartidasJugadas { get; set; }

        public Jugador()
        { }

        public Jugador(Guid id ,String nombre, String apellido, DateTime nacimiento)
        {
            this.Id = id;
            this.Nombre = nombre;
            this.Apellido = apellido;
            this.Nacimiento = nacimiento;
        }

        public int ContarGanadas()
        {
            int cantG = 0;
            foreach (Partida p in this.PartidasJugadas)
            {
                if (p.Gano(this))
                {
                    cantG++;
                }
            }
            return cantG;
        }

        public int ContarPerdidas()
        {
            int cantP = 0;
            foreach (Partida p in this.PartidasJugadas)
            {
                if (!p.Gano(this))
                {
                    cantP++;
                }
            }
            return cantP;
        }
    }
}